1. Field of the Invention
The present invention relates to a duplex printing method of a printing apparatus such as a printer or a copier, and more particularly, to a duplex printing method in which a sequence of pages to be printed is determined using a page backup algorithm in a state of a printer engine error, such as paper jam or paper empty, in order to print print data on both sides of a print sheet.
2. Description of the Related Art
A block diagram of a typical printing apparatus having a duplex printing function is shown in FIG. 1. The printing apparatus shown in FIG. 1 includes an interface unit 10, a controller 12, a memory 14, an image forming unit 16, and a sheet handler 18.
The controller 12 converts print data received from an external source through the interface unit 10 into images, stores the images in the memory 14, and transmits the images corresponding to respective pages to be printed to the image forming unit 16 in a predetermined printing sequence. The image forming unit 16 prints a received image on a sheet picked up by the sheet handler 18. The image forming unit 16 and the sheet handler 18 are parts that actually perform a printing function and are collectively referred to as a printer engine.
The controller 12 includes a scheduler (not shown) determining the printing sequence of the respective pages to be printed, an interpreter (not shown) processing the received print data, and a video controller (not shown). The image forming unit 16 forms an image on a corresponding sheet. The sheet handler 18 handles sheets and includes a duplex loop (not shown) for a duplex printing function.
Generally, the printing apparatus having the duplex printing function is provided with the duplex loop so that the duplex printing function can be implemented under the control of the controller 12. The duplex loop is an apparatus handling (processing) sheets for the duplex printing function.
The duplex loop is denoted by a reference numeral 28 shown in FIG. 1 of U.S. Pat. No. 6,069,704 and is also shown in FIG. 1 of U.S. Pat. No. 5,488,458 as a duplex loop path denoted by a reference numeral 13. Thus, a description about structure and operations of the duplex loop will be omitted.
Scheduling methods of determining the printing sequence of the pages to be printed for the duplex printing function in the printing apparatus such as a printer are different from each other depending on the number of sheets handled by the printer. That is, the scheduling methods are different from each other depending on the number of sheets which can be accommodated (disposed) in the duplex loop of the printer at a time, i.e., the number of sheets accommodated in the duplex loop during a period from the picking-up of the sheets to the printing out of the sheets. The number of sheets accommodated and handled in the duplex loop at a time indicates the number of sheets which can be processed in accordance with the duplex printing function in bulk and is hereinafter simply referred to as a duplex loop capacity.
The duplex loop capacity varies with a length of the duplex loop and the size of a sheet. As an example, it is assumed that sheets of the same size are accommodated and handled in the duplex loop. However, the present invention is not limited to the sheets of the same size.
If the duplex loop capacity of the printer is N, the video controller of the printer must be provided with 1N pages. For example, in a case where the duplex loop capacity is 5, when 10 pages are to be printed, the pages to be printed would be scheduled in order of second page→fourth page→sixth page→eighth page→tenth page→first page→third page→fifth page→seventh page→ninth page. Here, if there are only nine pages to be printed, the position of the tenth page should be skipped and processed as a null page. If there is a continuous printing job following the above printing job, the skipped part should be minimized to minimize a duplex cycle and the like. The method of scheduling the printing sequence of the pages to minimize a duplex cycle is disclosed in a U.S. Pat. No. 6,069,704.
However, the continuous printing job is sometimes interrupted or abruptly terminated. There may occur a processing error, such as paper jam or toner empty, in terms of mechanical characteristics of the printer or copier or a physical error such as paper empty in terms of a capacitive limit of a paper cassette.
In the above case, the printer can operate at a full speed only after the controller 12 generates image data corresponding to respective ones of the pages in the form of a bitmap or a similar form such as a display list or a compressed bitmap throughout the ten pages.
If the processing on the fifth page is delayed after completing the processing on first through fourth pages, or if a memory overflow occurs, it is needed to print just four pages in advance. As described above, the page scheduling needs to be changed depending on circumstances due to a capacity limit of the controller itself and a physical limit of the printing apparatus.
All cases which the errors can occur while the duplex printing function is performed in the printer will be reviewed. As an example, it is assumed that the duplex loop capacity is 2 in all of the following cases.
1. Continuous Duplex Printing or Fast Duplex Printing Mode
For example, when 8 pages are printed on both sides of 4 sheets, the printing sequence may be 2→4→1→6→3→8→5→7. Here, the numerals, such as 1 and 2, indicate page numbers. That is, numeral 2 indicates a second page.
In the fast duplex printing mode, at the moment that a next page to be printed is determined immediately after printing of the second page is completed, the fourth page should be prepared in the form of the bitmap or the similar form such as the display list or the compressed bitmap.
This mode allows a maximum engine efficiency in the printer having the duplex loop capacity of 2 to be accomplished.
2. Normal Duplex Printing or Normal Duplex Printing Mode
When 8 pages are printed, the printing sequence may be 2→1→4→3→6→5→8→7. This printing mode can occur in the following state.
First, it occurs when the third and fourth pages are not prepared at the moment of printing of a next page after the second page is completely printed, due to very complicated data or an insufficient capacity of a memory.
Second, it occurs when sheets are used in the printer engine having the duplex loop capacity of 2. In other words, long sheets may not be allowed by the duplex loop having the duplex loop capacity of 2 in terms of characteristics of the printing apparatus.
3. Continuous and Normal Duplex Printing Mode
When 10 pages are printed, the printing sequence may be 2→1→4→6→3→8→5→7→10→9.
This mode occurs when processing of the third and fourth pages and processing of the ninth and tenth pages are delayed or when the size of the sheets is large. In other words, this occurs when only the normal duplex printing mode is performed in the printing apparatus.
4. Duplex Printing Mode after Instant Engine Stop
For example, there may be three cases of the printing sequence.
Case 1: 2→engine error and stop→2→4→1→6→3→8→5→7
Case 2: 2→4→engine error and stop→2→4→1→6→3→8→5→7
Case 3: 2→4→1→engine error and stop→4→6→3→8→5→7
In the case 1 where the printer engine stops due to an engine error after the second page is printed, only the second page of a pair of the first and second pages has been printed, so the printing function restarts from the second page.
In the case 2 where the printer engine stops after the fourth page is printed, a pair of the first and second pages and a pair of the third and fourth pages have not been completely printed, so the printing function restarts from the second page.
In the case 3 where the printer engine stops after a pair of the first and second pages are completely printed, the printing function restarts from the fourth page.
In the above cases, the printer engine stops instantly after the paper jam. In the case 1, the paper jam occurs on the fourth page. In case 2, the paper jam occurs on the first page. In case 3, the paper jam occurs on the sixth page.
5. Duplex Printing Mode after Delaying Engine Stop
For example, there may be three cases of the printing sequence.
Case 4: 2→engine error→1→engine stop→4→6→3→8→5→7
Case 5: 2→4→engine error→1→3→engine stop→6→8→5→7
Case 6: 2→4→1→engine error→3→engine stop→4→6→3→8→5→7
In the case 4, the engine error occurs after the second page is printed, and the printer engine stops after printing the first page paired with the second page on a picked-up sheet.
In the case 5, the engine error occurs after the fourth page is printed, and the printer engine stops after printing the first and third pages paired with the second and fourth pages, respectively.
In the case 6, the engine error occurs after a sheet on which the fourth page is printed is picked up and the first page is printed, and the printer engine stops after printing the third page paired with the fourth page.
In the above cases, when the engine error occurs due to the paper empty or toner empty, the printer engine stops after a next page paired with a previously printed page that has been printed on a picked-up sheet is printed.
As described above, when a duplex loop capacity is greater than 1, the scheduling and determining the printing sequence of the pages to be printed varies in accordance with a state of the video controller, a printer engine, or print data.
However, the conventional duplex printing methods are performed only in a fixed (unchangeable) mode, so the mode cannot be changed between the fast duplex printing mode and the normal duplex printing mode, thereby decreasing efficiency of managing the memory.
In other words, when the scheduler of the controller 12 waits for a next print command to print a next page according to a predetermined order in the fast duplex printing mode according to the conventional duplex printing method, a first side page of a sheet printed in response to a previous printing command must be maintained in a memory until the print data corresponding to a second side page paired with the first side page to print both sides of the sheet in response to the printing command are converted into an image corresponding to the second side page, so the memory cannot be efficiently managed.
In this case, it is necessary to print the first side page for which the printing command has been made as soon as possible in order to securely provide a greater memory area and to thus increase the efficiency of managing the memory for the next page. However, according to the conventional duplex printing methods, since the duplex printing function is performed only in a fixed mode, the efficiency of the memory decreases. As a result, the printing efficiency decreases.
Moreover, according to the conventional duplex printing method, the printer is operated only in the fixed mode even if the error occurs, so the duplex printing function cannot be optimally performed in a variety of circumstances.